package com.design.patterns.responsibility;

/**
 * @Author: jinxuan
 * @Date: 2021/3/1 18:04
 */
public abstract  class AbstractTaskHandler {

    /**
     * 责任链模式特点之一：包含自己，方便子类可以直接使用
     */
    protected AbstractTaskHandler abstractTaskHandler;
    /**
     * 责任链模式特点之一：set方法，方便设置下一个链条
     *
     * @param abstractTaskHandler 抽象处理器
     */
    public void setNextTaskHandler(AbstractTaskHandler abstractTaskHandler) {
        this.abstractTaskHandler = abstractTaskHandler;
    }
    /**
     * 申请，交给子类实现
     */
    public abstract void apply(Task task);

}
